package com.jinke.api.modules.app.response;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.math.BigDecimal;
import java.util.List;

@Data
public class CreateLabel2Response {
    @ApiModelProperty(value = "32位UUID，此标签对象的主要和唯一标识符")
    private String objectId;
    private int status;
    @ApiModelProperty(value = "一组trackingNumber。如果货件中有多个包裹（标签），您将收到一个货件的多个追踪编号;追踪编号的数量等于包裹的数量。如果货件中有一个包裹（标签），您将仅获得一个追踪编号")
    private List<String> trackingNumber;
    @ApiModelProperty(value = "trackURL数组，返回的trackingurl的个数等于包的个数。如果有一个包，则会返回一个trackingurl")
    private List<String> trackingUrl;
    @ApiModelProperty(value = "用于附加和打印所有标签和发票的URL。我们建议使用此选项下载标签。")
    private String pdfUrl;
    @ApiModelProperty(value = "标签的所有URL。URL的数量将与包的数量相同")
    private List<String> labelUrl;
    @ApiModelProperty(value = "将收到国际货件的商业发票url")
    private List<String> invoiceUrl;
    @ApiModelProperty(value = "一次装运的估计成本")
    private double rate;
    @ApiModelProperty(value = "创建时间")
    private String createTime;
    @ApiModelProperty(value = "装运的实际成本（当上传ezeship发票时，此字段值将更新）。")
    private double billedAmount;
    @ApiModelProperty(value = "费用详细信息（在发票上传之前使用估计成本;此字段值将在发票上传后更新）")
    private FeeDetail feeDetail;

    @Data
    public static class FeeDetail {
        private BigDecimal dryIce;
        private BigDecimal cod;
        private BigDecimal insurance;
        private BigDecimal fuel;
        private BigDecimal baseRate;
    }
}
